﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Neotic.DataAccess.Sql
{
    public abstract class DbObjectProvider
    {
        public abstract Table GetTable(string schemaName, string tableName);

        public abstract View GetView(string schemaName, string viewName);

        public abstract Column GetColumn(IRowCollection o, string columName);

        protected Column CreateColumn (IRowCollection o, string colName)
        {
            return new Column(o, colName);
        }

        protected Table CreateTable(string schema, string name)
        {
            return new Table(schema, name);
        }

        protected View CreateView(string schema, string name)
        {
            return new View(schema, name);
        }
    }
}
